console: Make initial static console buffer __initdata.
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 22 Apr 2010 16:43:56 +0000 (17:43 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 22 Apr 2010 16:43:56 +0000 (17:43 +0100)
commitb5e0c9e2a3036937647f2f3e47275fde00415087
treebe5735975e2394f7af0bfe1df15e3bedcd286746
parent3dc27ee3852c9803ee87ff93224f0f33a49096ab
console: Make initial static console buffer __initdata.

The previous scheme --- freeing an area of BSS --- did not interact
nicely with device passthrough as IOMMU will not have any Xen BSS area
in guest device pagetables. Hence if the freed BSS space gets
allocated to a guest, DMAs to guest's own memory can fail.

The simple solution here is to always free the static buffer at end of
boot (initmem is specially handled for IOMMUs) and require a
dynamically-allocated buffer always to be created.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
xen/drivers/char/console.c